<?php

namespace App\Http\Model;

use Illuminate\Database\Eloquent\Model;

class Brand extends Model
{
    //初始化模型
    protected $table = 'brand';
    protected $primaryKey = 'bid';
    public $timestamps = false;//不要框架默认的更新时间和修改时间字段

    protected $guarded=[];//不能填充的字段为空

    //树形结构
    public function tree()
    {
        $oldData = $this->all();
//        dd($oldData);
        return $this->getTree($oldData,'bname','bid','pid',0);
//        dd($data);
    }

    //树形结构排序，更多分类需要递归；
    public function getTree($data,$name,$id='id',$pid='pid',$xpid=0) //（数据库，字段名，主键，父级，顶级）
    {
        $arr = array(); //存储新数据
        foreach ($data as $k=>$v){  //先获取顶级分类
            if ($v->$pid==$xpid){
                $data[$k]['_'.$name] = $data[$k][$name]; //顶级分类不需要前缀
                $arr[] = $data[$k];
                foreach ($data as $kk=>$vv){    //在获取二级分类
                    if($vv->$pid==$v->$id){
                        $data[$kk]['_'.$name] = '├─'.$data[$kk][$name];  //二级分类加一个前缀
                        $arr[] = $data[$kk];
                    }
                }
            }
        }
        return $arr;
    }


}
